{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "name": "Lesson_6-REVISED.ipynb",
      "provenance": [],
      "collapsed_sections": [],
      "toc_visible": true
    },
    "language_info": {
      "codemirror_mode": {
        "name": "ipython",
        "version": 3
      },
      "file_extension": ".py",
      "mimetype": "text/x-python",
      "name": "python",
      "nbconvert_exporter": "python",
      "pygments_lexer": "ipython3",
      "version": "3.7.1"
    },
    "kernelspec": {
      "display_name": "Python 3",
      "language": "python",
      "name": "python3"
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "fi1GVcIOZS20"
      },
      "source": [
        "# Урок 6"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "2i0OL9KOh0nY"
      },
      "source": [
        "from google.colab import drive\n",
        "drive.mount('/content/drive')"
      ],
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "ixjV8P1IZS23"
      },
      "source": [
        "# Системы линейных уравнений. Часть 1"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "40aj3lJuZS25"
      },
      "source": [
        "Система линейных алгебраических уравнений (СЛАУ) имеет вид: \n",
        "\n",
        "$$\\begin{cases}\n",
        "a_{11}x_{1}+a_{12}x_{2}+...+a_{1n}x_{n}=b_{1}, \\\\\n",
        "a_{21}x_{1}+a_{22}x_{2}+...+a_{2n}x_{n}=b_{2}, \\\\\n",
        "... \\\\\n",
        "a_{m1}x_{1}+a_{m2}x_{2}+...+a_{mn}x_{n}=b_{m}, \\\\\n",
        "\\end{cases}$$\n",
        "\n",
        "при этом через $x_{1},x_{2},...,x_{n}$ обозначены неизвестные, подлежащие определению, величины $a_{11},a_{12},...,a_{mn}$, называемые _коэффициентами системы_, и $b_{1},b_{2},...,b_{m}$, называемые _свободными членами_, предполагаются известными."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "GkS9zuaoZS27"
      },
      "source": [
        "_Решением_ системы называется такая совокупность $n$ чисел $c_{1},c_{2},...,c_{n}$, которая при подстановке в систему вместо неизвестных $x_{1},x_{2},...,x_{n}$ обращает все уравнения в тождества."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "TpJOoPfjZS29"
      },
      "source": [
        "Данную систему также можно записать в _матричной форме_ с использованием следующих матриц:\n",
        "\n",
        "- матрица коэффициентов системы\n",
        "\n",
        "$$A=\\begin{pmatrix}\n",
        "a_{11} & a_{12} & \\cdots & a_{1n}\\\\ \n",
        "a_{21} & a_{22} & \\cdots & a_{2n}\\\\ \n",
        "\\cdots & \\cdots & \\ddots & \\cdots\\\\ \n",
        "a_{m1} & a_{m2} & \\cdots & a_{mn}\n",
        "\\end{pmatrix};$$\n",
        "\n",
        "- вектор-столбец неизвестных\n",
        "\n",
        "$$x=\\begin{pmatrix}\n",
        "x_{1}\\\\ \n",
        "x_{2}\\\\ \n",
        "\\cdots \\\\ \n",
        "x_{n}\n",
        "\\end{pmatrix};$$\n",
        "\n",
        "- вектор-столбец правых частей (свободных членов системы)\n",
        "\n",
        "$$b=\\begin{pmatrix}\n",
        "b_{1}\\\\ \n",
        "b_{2}\\\\ \n",
        "\\cdots \\\\ \n",
        "b_{m}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "В таком случае система будет выглядеть как выражение \n",
        "\n",
        "$$Ax=b.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "N4d1XXASZS2-"
      },
      "source": [
        "Если $b_{1}=b_{2}=...=b_{m}=0$, то такая система линейных уравнений называется _однородной_. Если хотя бы один из элементов вектор-столбца правых частей отличен от нуля, система называется _неоднородной_."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "HFeVoZ9JZS2_"
      },
      "source": [
        "Матрица\n",
        "\n",
        "\n",
        "$$\\tilde{A}=\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "a_{11} & a_{12} & \\cdots & a_{1n}\\\\ \n",
        "a_{21} & a_{22} & \\cdots & a_{2n}\\\\ \n",
        "\\cdots & \\cdots & \\ddots & \\cdots\\\\ \n",
        "a_{m1} & a_{m2} & \\cdots & a_{mn}\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "b_{1}\\\\ \n",
        "b_{2}\\\\\n",
        "\\cdots\\\\\n",
        "b_{m}\n",
        "\\end{matrix}\n",
        "\\end{pmatrix},$$\n",
        "\n",
        "полученная присоединением вектор-столбца свободных членов к матрице коэффициентов, называется _расширенной матрицей_ системы уравнений."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "-OzTpDrQZS3B"
      },
      "source": [
        "## Метод Гаусса"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "vsnWFgQDZS3C"
      },
      "source": [
        "Одним из самых универсальных, простых и распространенных методов решения систем линейных уравнений является _метод Гаусса_. \n",
        "\n",
        "Этот метод также иногда называется _методом исключения неизвестных_. Он заключается в решении системы методом приведения ее к наиболее простому виду путем элементарных преобразований. Под наиболее простым видом здесь понимается _ступенчатая_ форма:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "a_{11} & a_{12} & \\cdots & a_{1n}\\\\ \n",
        "a_{21} & a_{22} & \\cdots & a_{2n}\\\\ \n",
        "\\cdots & \\cdots & \\ddots & \\cdots\\\\ \n",
        "a_{m1} & a_{m2} & \\cdots & a_{mn}\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "b_{1}\\\\ \n",
        "b_{2}\\\\\n",
        "\\cdots\\\\\n",
        "b_{m}\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}\n",
        "\\rightarrow\n",
        "\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "a'_{11} & a'_{12} & \\cdots & a'_{1n}\\\\ \n",
        "0 & a'_{22} & \\cdots & a'_{2n}\\\\ \n",
        "\\cdots & \\cdots & \\ddots & \\cdots\\\\ \n",
        "0 & 0 & \\cdots & a'_{mn}\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "b'_{1}\\\\ \n",
        "b'_{2}\\\\\n",
        "\\cdots\\\\\n",
        "b'_{m}\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "umhWKl1WZS3D"
      },
      "source": [
        "Опишем алгоритм метода для системы вида\n",
        "\n",
        "$$\\begin{cases}\n",
        "a_{11}x_{1}+a_{12}x_{2}+...+a_{1n}x_{n}=b_{1}, \\\\\n",
        "a_{21}x_{1}+a_{22}x_{2}+...+a_{2n}x_{n}=b_{2}, \\\\\n",
        "... \\\\\n",
        "a_{n1}x_{1}+a_{n2}x_{2}+...+a_{nn}x_{n}=b_{n}. \\\\\n",
        "\\end{cases}$$\n",
        "\n",
        "Приведем систему к требуемому виду путем последовательного исключения неизвестных."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "1v5oGfQIZS3E"
      },
      "source": [
        "Допустим, что коэффициент $a_{11}\\neq0$. Разделим коэффициенты первого из уравнений (включая и свободный член) на коэффициент $a_{11}$, который мы будем называть ведущим элементом (1-го шага) для получения единичного коэффициента у неизвестной $x_{11}$ и обозначим\n",
        "\n",
        "$$a'_{1j}=\\frac{a_{1j}}{a_{11}}~(j>1),$$\n",
        "\n",
        "$$b'_{1}=\\frac{b_{1}}{a_{11}}.$$\n",
        "\n",
        "Получим новое уравнение на месте первого:\n",
        "\n",
        "$$x_{1}+a'_{12}x_{2}+...+a'_{1n}x_{n}=b'_{1}.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "M_w6CtEkZS3G"
      },
      "source": [
        "Далее исключим $x_{1}$ из всех последующих уравнений посредством вычитания из этих уравнений полученного первого уравнения, умноженного соответственно на числа $a_{21}, a_{31},...,a_{n1}$. Преобразованные уравнения будут иметь вид\n",
        "\n",
        "$$a_{22}^{(1)}x_{2}+...+a_{2n}^{(1)}x_{n}=b_{2}^{(1)},$$\n",
        "$$...$$\n",
        "$$a_{n2}^{(1)}x_{2}+...+a_{nn}^{(1)}x_{n}=b_{n}^{(1)},$$\n",
        "\n",
        "где\n",
        "\n",
        "$$a_{ij}^{(1)}=a_{ij}-a_{i1}a'_{1j}~~~~(i,j\\geq2),$$\n",
        "$$b_{i}^{(1)}=b_{i}-a_{i1}b'_{1}.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "e_b6gU3CZS3H"
      },
      "source": [
        "Далее разделим коэффициенты первого из преобразованных уравнений на ведущий элемент 2-го шага $a_{22}^{1}$, который будем считать отличным от нуля. Получим второе уравнение системы:\n",
        "\n",
        "$$x_{2}+a'_{23}x_{3}+...+a'_{2n}x_{n}=b'_{2},$$\n",
        "\n",
        "где\n",
        "\n",
        "$$a'_{2j}=\\frac{a_{2j}^{(1)}}{a_{22}^{(1)}}, ~ b'_{2}=\\frac{b_{2}^{(1)}}{a_{22}^{(1)}}.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "Gy6JMYupZS3I"
      },
      "source": [
        "Далее, аналогично исключая $x_{2}$ из уравнений, начиная с третьего, получим\n",
        "\n",
        "$$a_{32}^{(2)}x_{3}+...+a_{3n}^{(2)}x_{n}=b_{3}^{(2)},$$\n",
        "$$...$$\n",
        "$$a_{n3}^{(2)}x_{3}+...+a_{nn}^{(2)}x_{n}=b_{n}^{(2)},$$\n",
        "\n",
        "где\n",
        "\n",
        "$$a_{ij}^{(2)}=a_{ij}^{(1)}-a_{i2}^{(1)}a'_{2j}~~~~(i,j\\geq3),$$\n",
        "$$b_{i}^{(2)}=b_{i}^{(1)}-a_{i2}^{(1)}b'_{2}.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "wTxh9_2JZS3J"
      },
      "source": [
        "Продолжая процесс по заданной схеме, на $k$-м шагу получим\n",
        "\n",
        "\n",
        "$$x_{k}+a'_{kk+1}x_{k+1}+...+a'_{kn}x_{n}=b'_{k},$$\n",
        "$$a_{k+1k+1}^{(k)}x_{k+1}+...+a_{k+1n}^{(k)}x_{n}=b_{k+1}^{(k)},$$\n",
        "$$...$$\n",
        "$$a_{nk+1}^{(k)}x_{k+1}+...+a_{nn}^{(k)}x_{n}=b_{n}^{(k)},$$\n",
        "\n",
        "где\n",
        "\n",
        "$$a'_{kj}=\\frac{a_{kj}^{(k-1)}}{a_{kk}^{(k-1)}} ~~~~~(j\\geq k+1),$$\n",
        "\n",
        "$$b'_{k}=\\frac{b_{k}^{(k-1)}}{a_{kk}^{(k-1)}},$$\n",
        "\n",
        "$$a_{ij}^{(k)}=a_{ij}^{(k-1)}-a_{ik}^{(k-1)}a'_{kj},$$\n",
        "\n",
        "$$b_{i}^{(k)}=b_{i}^{(k-1)}-a_{ik}^{(k-1)}b'_{k}.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "7SpqIuvEZS3K"
      },
      "source": [
        "После полного прохода по системе уравнений получим систему\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+a'_{12}x_{2}+a'_{13}x_{3}+...+a'_{1n}x_{n}=b'_{1}, \\\\\n",
        "~~~~~~~~~~~~~x_{2}+a'_{23}x_{3}+...+a'_{2n}x_{n}=b'_{2}, \\\\\n",
        "~~~~~~~~~~~~~.......................... \\\\\n",
        "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~x_{n}=b'_{n},\n",
        "\\end{cases}$$\n",
        "\n",
        "эквивалентную исходной системе. Эта система будет иметь треугольную матрицу коэффициентов. \n",
        "\n",
        "Стоит отметить, что этот процесс возможен только при условии неравенства нулю всех ведущих элементов $a_{kk}^{(k-1)}$, так как по ходу процесса мы производим деление на них."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "SZ5mXQjJZS3M"
      },
      "source": [
        "Из полученной системы послеовательно находим значения неизвестных от $x_{n}$ до $x_{1}$ по формулам\n",
        "\n",
        "$$x_{k}=b'_{k}-a'_{kk+1}x_{k+1}-...-a'_{kn}x_{n}.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "J5XYTnVAZS3N"
      },
      "source": [
        "Подытожим, что метод Гаусса состоит из двух частей: сначала для данной системы мы строим треугольную систему, а затем решаем ее. Процессс нахождения коэффициентов треугольной матрицы называется _прямым ходом_, а процесс получения решения — _обратным ходом_, так как мы сначала движемся сверху вниз по исходной матрице, а потом снизу вверх по полученной треугольной."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "elDDKCnnZS3O"
      },
      "source": [
        "Второй способ реализации метода Гаусса — работа с элементарными преобразованиями расширенной матрицы системы для приведения ее к ступенчатому виду.\n",
        "\n",
        "Мы уже имели дело с элементарными преобразованиями при нахождении ранга матриц. В данном случае допустимы преобразования __только строк__ следующего вида:\n",
        "\n",
        "- переставление строк местами;\n",
        "\n",
        "- умножение (деление) строки на любое отличное от нуля число;\n",
        "\n",
        "- прибавление к строке матрицы другой строки, умноженной на отличное от нуля число (при этом изменяется только строка, __к которой прибавляют__);\n",
        "\n",
        "- при появлении пропорциональных (или одинаковых) строк — удаление всех их кроме одной;\n",
        "\n",
        "- удаление нулевых строк (таких, в которых в процессе элементарных преобразований обнулились все элементы).\n",
        "\n",
        "Такие преобразования не будут менять решение системы."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "cHqV1pm2ZS3P"
      },
      "source": [
        "После приведения матрицы к ступенчатому виду производится обратный ход метода Гаусса, как и в предыдущей реализации алгоритма."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "EcENQ8i0ZS3R"
      },
      "source": [
        "Алгоритм выглядит достаточно сложным, однако после нескольких примеров станет ясно, что реализовать его на практике очень просто."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "oaxNO7zeZS3S"
      },
      "source": [
        "__Пример 1__\n",
        "\n",
        "Решить систему уравнений:\n",
        "\n",
        "$$\\begin{cases}\n",
        "2x_{1}+x_{2}+x_{3}=5, \\\\\n",
        "4x_{1}-6x_{2}=-2, \\\\\n",
        "-2x_{1}+7x_{2}+2x_{3}=9.\n",
        "\\end{cases}$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "y1n3pweJZS3T"
      },
      "source": [
        "Запишем расширенную матрицу системы:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "2 & 1 & 1 \\\\ \n",
        "4 & -6 & 0 \\\\ \n",
        "-2 & 7 & 2\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "5\\\\ \n",
        "-2\\\\\n",
        "9\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "Путем элементарных преобразований постараемся привести матрицу к ступенчатому виду.\n",
        "\n",
        "Вычтем из второй строки первую, умноженную на 2:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "2 & 1 & 1 \\\\ \n",
        "0 & -8 & -2 \\\\ \n",
        "-2 & 7 & 2\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "5\\\\ \n",
        "-12\\\\\n",
        "9\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "Прибавим к третьей строке первую:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "2 & 1 & 1 \\\\ \n",
        "0 & -8 & -2 \\\\ \n",
        "0 & 8 & 3\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "5\\\\ \n",
        "-12\\\\\n",
        "14\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "И прибавим к третьему уравнению второе:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "2 & 1 & 1 \\\\ \n",
        "0 & -8 & -2 \\\\ \n",
        "0 & 0 & 1\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "5\\\\ \n",
        "-12\\\\\n",
        "2\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "dwCOyvgxZS3U"
      },
      "source": [
        "В итоге после преобразований мы получили матрицу треугльного вида, которая представляет следующую систему:\n",
        "\n",
        "$$\\begin{cases}\n",
        "2x_{1}+x_{2}+x_{3}=5, \\\\\n",
        "~~-8x_{2}-2x_{3}=-12, \\\\\n",
        "~~~~~~~~~~~~~~~~~~~~x_{3}=2.\n",
        "\\end{cases}$$\n",
        "\n",
        "Проводя обратный ход метода Гаусса, последовательн подставляя известные значения в уравнения, получим\n",
        "\n",
        "$$x_{3}=2.$$\n",
        "\n",
        "Подставим $x_{3}$ во второе уравнение:\n",
        "$$-8x_{2} - 2\\cdot 2=-12\\Rightarrow x_{2}=1,$$\n",
        "\n",
        "а затем полученные $x_{2}$ и $x_{3}$ — в первое уравнение:\n",
        "$$2x_{1}+1+2=5\\Rightarrow x_{1}=1.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "U9G_xQuAZS3V"
      },
      "source": [
        "Если подставить полученные значения неизвестных в исходную систему, несложно убедиться, что все выражения обращаются в тождества:\n",
        "\n",
        "$$\\begin{cases}\n",
        "2\\cdot1+1+2=5,\\\\\n",
        "4\\cdot1-6\\cdot1=-2,\\\\\n",
        "-2\\cdot1+7\\cdot1+2\\cdot2=9.\n",
        "\\end{cases}$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "0fHmN3j1ZS3X"
      },
      "source": [
        "__Пример 2__\n",
        "\n",
        "Решить систему уравнений\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+x_{2}-x_{3}=0, \\\\\n",
        "2x_{1}-x_{2}-x_{3}=-2, \\\\\n",
        "4x_{1}+x_{2}-3x_{3}=9.\n",
        "\\end{cases}$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "3xpWiWEMZS3Y"
      },
      "source": [
        "Преобразуем расширенную матрицу системы путем элементарных преобразований:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 1 & -1 \\\\ \n",
        "2 & -1 & -1 \\\\ \n",
        "4 & 1 & -3\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "0\\\\ \n",
        "-2\\\\\n",
        "9\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "Вычтем из второй строки первую, умноженную на 2 и из третьей строки первую, умноженную на 4:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 1 & -1 \\\\ \n",
        "0 & -3 & 1 \\\\ \n",
        "0 & -3 & 1\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "0\\\\ \n",
        "-2\\\\\n",
        "9\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "И вычтем из третьей строки вторую:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 1 & -1 \\\\ \n",
        "0 & -3 & 1 \\\\ \n",
        "0 & 0 & 0\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "0\\\\ \n",
        "-2\\\\\n",
        "11\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "Третья строка получившейся матрицы соответствует уравнению\n",
        "\n",
        "$$0\\cdot x_{1}+0\\cdot x_{2}+0\\cdot x_{3}=11 \\; \\Leftrightarrow \\; 0=11.$$\n",
        "\n",
        "Полученное равенство не имеет смысла, а значит, система решений не имеет."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "f4WDi0XfZS3Z"
      },
      "source": [
        "Этот пример иллюстрирует нам важный случай, на который следует обратить особое внимание: _если в результате элементарных преобразований в расширенной матрице получена строка вида $(0~0...0|\\lambda)$, где $\\lambda$ — отличное от нуля число, то такая система не имеет решений._"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "czB6XYWIZS3b"
      },
      "source": [
        "__Пример 3__\n",
        "\n",
        "Решить систему уравнений\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+x_{2}-x_{3}=0, \\\\\n",
        "2x_{1}-x_{2}-x_{3}=-2, \\\\\n",
        "4x_{1}+x_{2}-3x_{3}=-2.\n",
        "\\end{cases}$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "YR00kYwJZS3e"
      },
      "source": [
        "Преобразуем расширенную матрицу системы путем элементарных преобразований:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 1 & -1 \\\\ \n",
        "2 & -1 & -1 \\\\ \n",
        "4 & 1 & -3\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "0\\\\ \n",
        "-2\\\\\n",
        "-2\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "Вычтем из второй строки первую, умноженную на 2, и из третьей строки первую, умноженную на 4:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 1 & -1 \\\\ \n",
        "0 & -3 & 1 \\\\ \n",
        "0 & -3 & 1\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "0\\\\ \n",
        "-2\\\\\n",
        "-2\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "И вычтем из третьей строки вторую:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 1 & -1 \\\\ \n",
        "0 & -3 & 1 \\\\ \n",
        "0 & 0 & 0\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "0\\\\ \n",
        "-2\\\\\n",
        "0\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "Обнулившуюся строку удаляем и получаем\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 1 & -1 \\\\ \n",
        "0 & -3 & 1\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "0\\\\ \n",
        "-2\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "NSlm4nyMZS3g"
      },
      "source": [
        "Это еще один особый случай при использовании метода Гаусса. В полученном ступенчатом виде мы имеем ступеньки из двух чисел, а не из одного, как это требуется. В таком случае система имеет _бесконечное количество решений._"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "38qX9RKqZS3h"
      },
      "source": [
        "Оставшаяся матрица соответствует системе\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+x_{2}-x_{3}=0, \\\\\n",
        "~~-3x_{2}+x_{3}=-2.\n",
        "\\end{cases}$$\n",
        "\n",
        "Бесконечное множество решений принято записывать в виде _общего решения_.\n",
        "\n",
        "Последнее уравнение содержит две неизвестных. Неизвестные, «сидящие» на ступеньках матрицы, принято назывть _базисными_, и их нужно выразить через _свободные_ неизвестные. В данном случае можно рассматривать в качестве _свободного_ параметра $x_{3}=c$. Тогда, выражая остальные переменные через $c$, получим:\n",
        "\n",
        "$$x_{3}=c,$$\n",
        "$$-3x_{2}+c=-2 \\; \\Leftrightarrow \\; x_{2}=(c+2)/3,$$\n",
        "$$x_{1} + (c+2)/3 - c=0 \\; \\Leftrightarrow \\; x_{1}=(2c-2)/3.$$\n",
        "\n",
        "Таковым будет _общее решение системы_. Подставляя произвольные числа вместо $c$, мы получим _частное решение_. Например, при $c=0$:\n",
        "\n",
        "$$x_{1}=-2/3,$$\n",
        "$$x_{2}=2/3,$$\n",
        "$$x_{3}=0.$$\n",
        "\n",
        "Параметр $c$ может принимать бесконечное количество значений, при которых уравнения в системе будут обращаться в тождества.\n",
        "\n",
        "Подставив общее решение в исходную систему, также получим тождества:\n",
        "\n",
        "$$\n",
        "\\begin{cases}\n",
        "2c/3-2/3+c/3+2/3- c=0, \\\\\n",
        "2(2c/3-2/3) -c/3-2/3 -c=4c/3-4/3 -c/3-2/3 -c=-2, \\\\\n",
        "4(2c/3-2/3)+c/3+2/3-3c=8c/3-8/3+c/3+2/3-3c=-2.\n",
        "\\end{cases}\n",
        "$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "0j2kHuO1ZS3l"
      },
      "source": [
        "## Существование и единственность решений систем линейных уравнений"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "JmSGJhHoZS3n"
      },
      "source": [
        "Как мы увидели на примерах реализации метода Гаусса, система линейных уравнений может иметь единственное решение, бесконечное количество решений или не иметь решений вовсе. "
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "irHl4oOkZS3q"
      },
      "source": [
        "Система, не имеющая решений, называется _несовместной_. Соответственно, если система имеет хотя бы одно решение, она называется _совместной_. При этом, если это решение единственное, она называется _определенной_, а если решений больше одного — _неопределенной_."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "lslyz5DJZS3s"
      },
      "source": [
        "Теоретическое решение системы из $n$ уравнений с $n$ переменными $Ax=b$ дается формулой \n",
        "\n",
        "$$x=A^{-1}b,$$\n",
        "\n",
        "где $A^{-1}$ — матрица, обратная к $A$. Как известно, $A^{-1}$ существует только в том случае, когда матрица $A$ невырождена, то есть ее определитель $|A|\\neq0$."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "KtR-mwgYZS3t"
      },
      "source": [
        "Кроме матричного вида, показанного выше, систему линейных уравнений также можно представить через линейную комбинацию векторов коэффициентов:\n",
        "\n",
        "$$x_{1}\\begin{pmatrix}\n",
        "a_{11}\\\\ \n",
        "a_{21}\\\\ \n",
        "...\\\\ \n",
        "a_{m1}\n",
        "\\end{pmatrix}+\n",
        "x_{2}\\begin{pmatrix}\n",
        "a_{12}\\\\ \n",
        "a_{22}\\\\ \n",
        "...\\\\ \n",
        "a_{m2}\n",
        "\\end{pmatrix}+\n",
        "...+\n",
        "x_{n}\\begin{pmatrix}\n",
        "a_{1n}\\\\ \n",
        "a_{2n}\\\\ \n",
        "...\\\\ \n",
        "a_{mn}\n",
        "\\end{pmatrix}=\n",
        "\\begin{pmatrix}\n",
        "b_{1}\\\\ \n",
        "b_{2}\\\\ \n",
        "...\\\\ \n",
        "b_{m}\n",
        "\\end{pmatrix}.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "brcMqD9yZS3v"
      },
      "source": [
        "В таком представлении вектор свободных членов $b$ является линейной комбинацией векторов $a_{1},a_{2},...,a_{m}$ с коэффициентами $x_{1},x_{2},...,x_{n}$."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "Vc9R654CZS3w"
      },
      "source": [
        "В этом случае совместность и несовместность системы удобно определять, анализируя векторы коэффициентов $a$ и вектор свободных членов $b$."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "NrsLC8VdZS3y"
      },
      "source": [
        "Так, векторами коэффициентов $a_{1},a_{2},...,a_{m}$ будет образовано некоторое линейное подпространство. Если вектор $b$ этому подпространству не принадлежит, то система несовместна.\n",
        "\n",
        "Если вектор $b$ принадлежит образованному линейному подпространству, то система точно совместна. Она будет иметь единственное решение в том случае, когда размерность этого линейного пространства будет совпадать с количеством $m$ векторов (с количеством неизвестных). Это будет означать, что векторы $a_{1},a_{2},...,a_{m}$ будут образовывать в этом пространстве базис, и вектор $b$ по нему можно разложить единственным образом. В противном случае система будет иметь бесконечное число решений."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "7Myuvx4TZS30"
      },
      "source": [
        "Для прояснения этого принципа рассмотрим несколько примеров"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "AgFPI4jpZS32"
      },
      "source": [
        "#### 1. Число уравнений равно числу неизвестных"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "-BZFoDyKZS35"
      },
      "source": [
        "Рассмотрим пример простой системы:\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+x_{2}=3, \\\\\n",
        "2x_{1}+3x_{2}=8. \\\\\n",
        "\\end{cases}$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "dW8pb5PLZS3-"
      },
      "source": [
        "Такая система будет иметь решение $x_{1}=1, x_{2}=2$, причем оно будет являться единственным."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "AMd9j5ioZS4A"
      },
      "source": [
        "Перепишем эту систему в векторном виде:\n",
        "\n",
        "$$x_{1}\\begin{pmatrix}\n",
        "1\\\\ \n",
        "2\n",
        "\\end{pmatrix}+\n",
        "x_{2}\\begin{pmatrix}\n",
        "1\\\\ \n",
        "3\n",
        "\\end{pmatrix}=\n",
        "\\begin{pmatrix}\n",
        "3\\\\ \n",
        "8\n",
        "\\end{pmatrix} \\Leftrightarrow x_{1}a_{1}+x_{2}a_{2}=b$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "-wsmOpynZS4B"
      },
      "source": [
        "Если представить эту ситуацию на плоскости (см. рис. 1), то мы поймем, что вектор \n",
        "\n",
        "$$b=\n",
        "\\begin{pmatrix}\n",
        "3\\\\ \n",
        "8\n",
        "\\end{pmatrix}$$\n",
        "\n",
        "легко можно представить в виде суммы векторов \n",
        "\n",
        "$$a_{1}=\\begin{pmatrix}\n",
        "1\\\\ \n",
        "2\n",
        "\\end{pmatrix}, a_{2}=\n",
        "\\begin{pmatrix}\n",
        "1\\\\ \n",
        "3\n",
        "\\end{pmatrix},$$\n",
        "\n",
        "домноженных на некоторые коэффициенты (в данном случае на 1 и 2 соответственно), причем, как мы помним, два линейно независимых вектора в двумерном пространстве образуют базис, и любой вектор в этом пространстве можно выразить через линейную комбинацию элементов единственным образом, что объясняет единственность решения системы."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "9t0ApIHoZS4F"
      },
      "source": [
        "# запустите последовательно код в ячейках,чтобы отобразить иллюстрации\n",
        "import matplotlib.pyplot as plt"
      ],
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "AmLg63NsZS4N",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 269
        },
        "outputId": "c569e884-08ac-4c7d-d3ed-ce0c2f721cd5"
      },
      "source": [
        "fig = plt.figure()\n",
        "ax = fig.add_subplot(1,1,1)\n",
        "\n",
        "ax.spines['left'].set_position('zero')\n",
        "ax.spines['bottom'].set_position('zero')\n",
        "\n",
        "ax.spines['right'].set_color('none')\n",
        "ax.spines['top'].set_color('none')\n",
        "\n",
        "plt.axis('scaled')\n",
        "plt.xlim(0, 4)\n",
        "plt.ylim(0, 4)\n",
        "\n",
        "ax.arrow(0, 0, 0.5, 2, head_width=0.15, head_length=0.2, length_includes_head=True, facecolor='black')\n",
        "ax.arrow(0, 0, 2, 0.5, head_width=0.15, head_length=0.2, length_includes_head=True, facecolor='black')\n",
        "ax.arrow(0, 0, 4, 2, head_width=0.15, head_length=0.2, length_includes_head=True, facecolor='black')\n",
        "\n",
        "ax.annotate(\"a1\", xy=(1.8, 0.6))\n",
        "ax.annotate(\"a2\", xy=(0.6, 1.8))\n",
        "ax.annotate(\"b\", xy=(3.8, 1.6))\n",
        "\n",
        "\n",
        "plt.show()"
      ],
      "execution_count": null,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 432x288 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "MyAyrohnZS4Y"
      },
      "source": [
        "$$Рис. 1$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "lYX1mS8PZS4Z"
      },
      "source": [
        "Перенесем сделанные выводы на общий случай для системы с равным количеством уравнений и неизвестных ($n=m$):\n",
        "\n",
        "$$x_{1}\\begin{pmatrix}\n",
        "a_{11}\\\\ \n",
        "a_{21}\\\\ \n",
        "...\\\\ \n",
        "a_{n1}\n",
        "\\end{pmatrix}+\n",
        "x_{2}\\begin{pmatrix}\n",
        "a_{12}\\\\ \n",
        "a_{22}\\\\ \n",
        "...\\\\ \n",
        "a_{n2}\n",
        "\\end{pmatrix}+\n",
        "...+\n",
        "x_{n}\\begin{pmatrix}\n",
        "a_{1n}\\\\ \n",
        "a_{2n}\\\\ \n",
        "...\\\\ \n",
        "a_{nn}\n",
        "\\end{pmatrix}=\n",
        "\\begin{pmatrix}\n",
        "b_{1}\\\\ \n",
        "b_{2}\\\\ \n",
        "...\\\\ \n",
        "b_{n}\n",
        "\\end{pmatrix} \\Leftrightarrow a_{1}x_{1}+a_{2}x_{2}+...+a_{n}x_{n}=b.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "aQUH9rYaHBPP"
      },
      "source": [
        ""
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "S2O-UinFZS4a"
      },
      "source": [
        "Решение этой системы можно трактовать как коэффициенты разложения вектора $b$ по векторам $a_{1},a_{2},...,a_{n}$. В случае, если они линейно независимы, они будут образовывать в данном $n$-мерном пространстве базис, а значит, любой элемент пространства мы можем разложить по этому базису с коэффициентами $x_{1},x_{2},...,x_{n}$ единственным образом.\n",
        "\n",
        "_Таким образом, в случае, __когда число уравнений равно числу неизвестных__ и матрица коэффициентов невырождена, если векторы столбцов коэффициентов $a_{1},a_{2},...,a_{n}$ линейно независимы, то такая система совместна, и ее решение единственно при любом векторе свободных членов $b$._ "
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "pXHIAkNGZS4b"
      },
      "source": [
        "Теперь рассмотрим систему, где векторы коэффициентов $a_{1}$ и $a_{2}$ будут линейно зависимы:\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+2x_{2}=b_{1}, \\\\\n",
        "2x_{1}+4x_{2}=b_{2}.\n",
        "\\end{cases}$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "peUGQxvqZS4e"
      },
      "source": [
        "С геометрической точки зрения в двумерном пространстве это означает, что два вектора\n",
        "\n",
        "$$a_{1}=\\begin{pmatrix}\n",
        "1\\\\ \n",
        "2\n",
        "\\end{pmatrix}, a_{2}=\n",
        "\\begin{pmatrix}\n",
        "2\\\\ \n",
        "4\n",
        "\\end{pmatrix}$$\n",
        "\n",
        "лежат на одной прямой, то есть принадлежат некоторому одномерному линейному подпространству исходного двумерного пространства (см. рис. 2).\n",
        "\n",
        "В этой ситуации возможны два случая. Если вектор свободных членов $b$ не лежит на этой прямой (не принадлежит этому подпространству), значит, мы никак не можем разложить его по векторам $a_{1}$ и $a_{2}$. Это означает, что такая система решений не имеет.\n",
        "\n",
        "Если же вектор $b$ лежит на этой прямой, мы уже можем разложить его по векторам $a_{1}$ и $a_{2}$, причем бесконечным количеством способов: так как базисом в данном одномерном подпространстве может быть любой из векторов $a_{1}$ и $a_{2}$, мы можем один из них перенести в правую часть уравнения и, например, однозначно разложить по базису $a_{1}$ любой вектор из правой части вида $b-x_{2}a_{2}$. Но так как $x_{2}$ мы можем выбрать бесконечным количеством способов, и сама система будет иметь бесконечное количество решений."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "MeoA6w6g2-Wv"
      },
      "source": [
        "# Новый раздел"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Voj7ho7_ZS4f",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 521
        },
        "outputId": "1853a1dc-7c7d-40b8-c8f1-6a52aa1e753d"
      },
      "source": [
        "fig = plt.figure()\n",
        "ax = fig.add_subplot(1,1,1)\n",
        "\n",
        "ax.spines['left'].set_position('zero')\n",
        "ax.spines['bottom'].set_position('zero')\n",
        "\n",
        "ax.spines['right'].set_color('none')\n",
        "ax.spines['top'].set_color('none')\n",
        "\n",
        "plt.axis('scaled')\n",
        "plt.xlim(0, 4)\n",
        "plt.ylim(0, 4)\n",
        "\n",
        "ax.arrow(0, 0, 0.5, 2, head_width=0.15, head_length=0.2, length_includes_head=True, facecolor='black')\n",
        "ax.arrow(0, 0, 0.75, 3, head_width=0.15, head_length=0.2, length_includes_head=True, facecolor='black')\n",
        "ax.arrow(0, 0, 4, 2, head_width=0.15, head_length=0.2, length_includes_head=True, facecolor='black')\n",
        "\n",
        "ax.annotate(\"a1\", xy=(0.8, 2.8))\n",
        "ax.annotate(\"a2\", xy=(0.6, 1.8))\n",
        "ax.annotate(\"b\", xy=(3.8, 1.6))\n",
        "\n",
        "fig2 = plt.figure()\n",
        "ax2 = fig2.add_subplot(1,1,1)\n",
        "\n",
        "ax2.spines['left'].set_position('zero')\n",
        "ax2.spines['bottom'].set_position('zero')\n",
        "\n",
        "ax2.spines['right'].set_color('none')\n",
        "ax2.spines['top'].set_color('none')\n",
        "\n",
        "plt.axis('scaled')\n",
        "plt.xlim(0, 4)\n",
        "plt.ylim(0, 4)\n",
        "\n",
        "ax2.arrow(0, 0, 0.4, 2, head_width=0.15, head_length=0.2, length_includes_head=True, facecolor='black')\n",
        "ax2.arrow(0, 0, 0.6, 3, head_width=0.15, head_length=0.2, length_includes_head=True, facecolor='black')\n",
        "ax2.arrow(0, 0, 0.8, 4, head_width=0.15, head_length=0.2, length_includes_head=True, facecolor='black')\n",
        "\n",
        "ax2.annotate(\"a1\", xy=(0.8, 2.8))\n",
        "ax2.annotate(\"a2\", xy=(0.6, 1.8))\n",
        "ax2.annotate(\"b\", xy=(1, 3.8))\n",
        "\n",
        "\n",
        "plt.show()"
      ],
      "execution_count": null,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 432x288 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 432x288 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "MJ5FMxZ7ZS4o"
      },
      "source": [
        "$$Рис. 2$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "i47F5RKNZS4p"
      },
      "source": [
        "В общем случае это означает, что _когда векторы столбцов коэффициентов $a_{1},a_{2},...,a_{n}$ линейно зависимы, они образуют некоторое линейное подпространство размерности меньше, чем $n$, и такая система совместна только в случае, когда вектор $b$ принадлежит этому линейному подпространству. В этом случае система имеет бесконечное число решений. Если же вектор $b$ этому подпространству не принадлежит, система решений не имеет._"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "oy6BOZK_ZS4q"
      },
      "source": [
        "__Пример__\n",
        "\n",
        "Выясним, будет ли совместной следующая система:\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+2x_{2}=5, \\\\\n",
        "2x_{1}+4x_{2}=6.\n",
        "\\end{cases}$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "kwEvpF-dZS4r"
      },
      "source": [
        "Векторы коэффициентов линейно зависимы, и вектор свободных членов не принадлежит одномерному подпространству, которое они образуют.\n",
        "\n",
        "Решим систему методом Гаусса:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 2  \\\\ \n",
        "2 & 4\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "5\\\\ \n",
        "6\n",
        "\\end{matrix}\n",
        "\\end{pmatrix},$$\n",
        "\n",
        "вычтем из второй строки первую, умноженную на 2:\n",
        "\n",
        "$$\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 2  \\\\ \n",
        "0 & 0\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "5\\\\ \n",
        "-4\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "Действительно, такая система несовместна."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "BvpvExmeZS4t"
      },
      "source": [
        "#### 2. Число уравнений меньше числа неизвестных"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "dbHHnsVvZS4u"
      },
      "source": [
        "Системы уравнений, в которых число уравнений меньше числа неизвестных, называются _недоопределенными_."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "uyKdokTSZS4v"
      },
      "source": [
        "Рассмотрим систему\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+2x_{2}+4x_{3}=1, \\\\\n",
        "2x_{1}+3x_{2}+7x_{3}=9. \\\\\n",
        "\\end{cases}$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "ff3uUc5cZS4w"
      },
      "source": [
        "В двумерном пространстве любая пара векторов\n",
        "\n",
        "$$a_{1}=\\begin{pmatrix}\n",
        "1\\\\ \n",
        "2\n",
        "\\end{pmatrix}, a_{2}=\n",
        "\\begin{pmatrix}\n",
        "2\\\\ \n",
        "3\n",
        "\\end{pmatrix}, a_{3}=\n",
        "\\begin{pmatrix}\n",
        "4\\\\ \n",
        "7\n",
        "\\end{pmatrix}$$\n",
        "\n",
        "может образовать базис, по которому получится единственным образом разложить любой вектор. В частности, перенося $a_{3}x_{3}$ в правую часть уравнения вида $a_{1}x_{1}+a_{2}x_{2}+a_{3}x_{3}=b$, мы сможем однозначно разложить получившийся справа вектор $b-a_{3}x_{3}$ и получить тождество, но так как $x_{3}$ может принимать бесконечное количество значений, и _решений системы также будет бесконечное количество_, то есть здесь будет формироваться _фундаментальная система решений_ (с этим термином вы познакомитесь на следующем уроке). Это же будет работать и тогда, когда любые два вектора из $a_{1},a_{2}, a_{3}$ будут линейно зависимыми."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "LDjdOYW3ZS42"
      },
      "source": [
        "В системе же, в которой векторы коэффициентов линейно зависимы:\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+2x_{2}+3x_{3}=b_{1}, \\\\\n",
        "2x_{1}+4x_{2}+6x_{3}=b_{2}, \\\\\n",
        "\\end{cases}$$\n",
        "\n",
        "то есть принадлежат одному и тому же одномерному линейному подпространству, как и в случае с равным количеством уравнений и переменных, _система будет совместна только тогда, когда вектор свободных членов будет принадлежать этому подпространству. В этом случае система будет иметь бесконечное количество решений. В противном случае система будет несовместна_. "
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "Zs8s0xtZZS43"
      },
      "source": [
        "#### 3. Число уравнений больше числа неизвестных"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "W5m4ugpbZS46"
      },
      "source": [
        "Начнем с примера, когда векторы столбцов коэффициентов линейно независимы:\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+2x_{2}=b_{1}, \\\\\n",
        "2x_{1}+4x_{2}=b_{2}, \\\\\n",
        "3x_{1}+7x_{2}=b_{3}.\n",
        "\\end{cases}$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "L14MgNzeZS47"
      },
      "source": [
        "В этой ситуации перед нами стоит задача разложить трехмерный вектор $b=\\begin{pmatrix}\n",
        "b_{1}\\\\ \n",
        "b_{2}\\\\\n",
        "b_{3}\n",
        "\\end{pmatrix}$ по двум векторам: $a_{1}=\\begin{pmatrix}\n",
        "1\\\\ \n",
        "2\\\\\n",
        "3\n",
        "\\end{pmatrix}, a_{2}=\\begin{pmatrix}\n",
        "2\\\\ \n",
        "4\\\\\n",
        "7\n",
        "\\end{pmatrix}$."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "BwoGa5qlZS49"
      },
      "source": [
        "_Это будет возможно только в том случае, если вектор свободных членов $b$ будет принадлежать линейному подпространству, образованному векторами $a_{1}$ и $a_{2}$, то есть (в данном частном случае) лежать с ними в одной плоскости. В этом случае система будет иметь единственное решение, которым будут являться коэффициенты разложения вектора $b$ по базису из $a_{1}$ и $a_{2}$ в этой плоскости. Если же $b$ не будет принадлежать образованному векторами столбцов коэффициентов линейному подпространству, система будет несовместна_."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "Ufusvr0vZS4_"
      },
      "source": [
        "Когда векторы столбцов коэффициентов линейно зависимы, \n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+2x_{2}=b_{1}, \\\\\n",
        "2x_{1}+4x_{2}=b_{2}, \\\\\n",
        "3x_{1}+6x_{2}=b_{3}, \n",
        "\\end{cases}$$\n",
        "\n",
        "векторы коэффициентов будут лежать на одной прямой, и, как и в двух предыдущих случаях, _система будет совместна только тогда, когда вектор свободных членов будет также лежать на этой прямой. Система будет иметь бесконечное количество решений. Если вектор $b$ не будет принадлежать образованному одномерному линейному подпространству, решений система иметь не будет_."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "PWG3zudjZS5C"
      },
      "source": [
        "## Теорема Кронекера — Капелли"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "ECgdrSZiZS5H"
      },
      "source": [
        "Вернемся к матричному виду систем линейных уравнений \n",
        "\n",
        "$$Ax=b.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "VRbUdVbrZS5J"
      },
      "source": [
        "__Теорема__ \n",
        "\n",
        "Необходимым и достаточным условием совместности системы из $m$ уравнений с $n$ неизвестными является равенство между собой рангов матрицы коэффициентов $A$ и расширенной матрицы $\\tilde A$\n",
        "\n",
        "$$rank A=rank \\tilde A.$$"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "5BcIUSGNZS5K"
      },
      "source": [
        "Причем:<br>\n",
        "1) если $rankA=rank \\tilde A=n$, где $n$ — число неизвестных, то система определена, т. е. имеет единственное решение;<br>\n",
        "2) если $rankA=rank \\tilde A<n$, то система имеет бесконечное количество решений;<br>\n",
        "3) если $rankA<rank \\tilde A$, то система несовместна."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "qprHkBztZS5L"
      },
      "source": [
        "__Пример__\n",
        "\n",
        "Проверить на совместность и выяснить, сколько решений будет иметь система линейных уравнений, заданная расширенной матрицей\n",
        "\n",
        "$$\\tilde{A}=\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 2 & 3 & 4\\\\ \n",
        "0 & 5 & 6 & 7\\\\ \n",
        "0 & 0 & 8 & 9\\\\ \n",
        "0 & 0 & 0 & 0\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "1\\\\ \n",
        "2\\\\\n",
        "3\\\\\n",
        "a\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}$$\n",
        "\n",
        "при различных значениях параметра $a$."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "JeHIJyOHblv2"
      },
      "source": [
        ""
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "0CtRvxH_ZS5M"
      },
      "source": [
        "__Решение__\n",
        "\n",
        "Если $a\\neq 0$, то $rank \\tilde A=4$, в то время как $rank A=3$. Это означает, что система в этом случае несовместна.\n",
        "\n",
        "Если $a=0$, тогда $rank A=rank \\tilde A=3$, что меньше количества неизвестных $m=4$. В этом случае система имеет бесконечное множество решений, и одна из неизвестных должна рассматриваться как свободный параметр, при любых значениях которого система будет иметь решение."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "J2D422I0ZS5N"
      },
      "source": [
        "## Практическое задание"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "cTVfl123ZS5O"
      },
      "source": [
        "__1.__ Решить систему уравнений методом Гаусса:\n",
        "\n",
        "$$\\begin{cases}\n",
        "x_{1}+x_{2}-x_{3}-2x_{4}=0, \\\\\n",
        "2x_{1}+x_{2}-x_{3}+x_{4}=-2, \\\\\n",
        "x_{1}+x_{2}-3x_{3}+x_{4}=4.\n",
        "\\end{cases}$$\n",
        "\n",
        "__2.__ Проверить на совместность и выяснить, сколько решений будет иметь система линейных уравнений:\n",
        "\n",
        "   а) $\\begin{cases}\n",
        "3x_{1}-x_{2}+x_{3}=4, \\\\\n",
        "2x_{1}-5x_{2}-3x_{3}=-17, \\\\\n",
        "x_{1}+x_{2}-x_{3}=0;\n",
        "\\end{cases}$\n",
        "    \n",
        "   б) $\\begin{cases}\n",
        "2x_{1}-4x_{2}+6x_{3}=1, \\\\\n",
        "x_{1}-2x_{2}+3x_{3}=-2, \\\\\n",
        "3x_{1}-6x_{2}+9x_{3}=5;\n",
        "\\end{cases}$\n",
        "    \n",
        "   в) $\\begin{cases}\n",
        "x_{1}+2x_{2}+5x_{3}=4, \\\\\n",
        "3x_{1}+x_{2}-8x_{3}=-2. \n",
        "\\end{cases}$\n",
        "\n",
        "\n",
        "__3.__ Проверить на совместность и выяснить, сколько решений будет иметь система линейных уравнений, заданная расширенной матрицей\n",
        "\n",
        "$$\\tilde{A}=\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 3 & -2 & 4\\\\ \n",
        "0 & 5 & 0 & 1\\\\ \n",
        "0 & 0 & 3 & 0\\\\ \n",
        "0 & 0 & 0 & 2\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "3\\\\ \n",
        "2\\\\\n",
        "4\\\\\n",
        "1\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "__4.__ Дана система линейных уравнений, заданная расширенной матрицей\n",
        "\n",
        "$$\\tilde{A}=\\begin{pmatrix}\n",
        "\\left.\\begin{matrix}\n",
        "1 & 2 & 3\\\\ \n",
        "4 & 5 & 6\\\\ \n",
        "7 & 8 & 9\n",
        "\\end{matrix}\\right|\n",
        "\\begin{matrix}\n",
        "a\\\\ \n",
        "b\\\\\n",
        "c\n",
        "\\end{matrix}\n",
        "\\end{pmatrix}.$$\n",
        "\n",
        "Найти соотношение между параметрами $a$, $b$ и $c$, при которых система является несовместной."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "KmO619H0ZS5P"
      },
      "source": [
        "## Литература"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "some8H9wZS5Q"
      },
      "source": [
        "0/85400850/086-                  бббббб                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           21. Ильин В. А., Позняк Э. Г. Линейная алгебра: Учеб. для вузов. — 6-е изд. — М.: Физматлит, 2005.\n",
        "\n",
        "2. Фаддеев Д. К., Фаддеева В. Н. Вычислительные методы линейной алгебры. М.: ГИФМЛ, 1960.\n",
        "\n",
        "3. Рябушко А. П., Сборник индивидуальных заданий по высшей математике. Часть 1. Минск: Вышэйшая школа, 1990."
      ]
    }
  ]
}